package com.shark.uh.model.dto.captcha;

import lombok.Data;

/**
 * 图形验证码实体
 * <p>
 * 用于表示包含验证码标识和图形数据的实体对象，用于登陆注册验证场景。
 * 客户端通过该实体获取验证码图像和对应的验证标识，服务端通过验证标识进行校验。
 *
 * @author zwb
 * @since 2025-02-04
 */
@Data
public class ImageCaptchaDTO {
    /**
     * 验证码唯一标识（UUID格式）
     * <p>
     * 示例值："550e8400-e29b-41d4-a716-446655440000"
     *
     * @see java.util.UUID
     */
    private String verificationId;

    /**
     * Base64编码的验证码图像数据
     * <p>
     * 格式规范：
     * <ul>
     *   <li>图像格式：PNG</li>
     *   <li>编码格式：RFC 4648标准Base64编码</li>
     *   <li>数据前缀：包含"data:image/png;base64,"头部标识</li>
     * </ul>
     *
     * 示例值："..."
     */
    private String base64EncodedImage;
}
